#include "log_in.h"
#include "sign_up.h"
#include "lvgl_init.h"

int main(void)
{
    /*链表初始化*/ 
    headnode = init_Stu_datalist();
    
    init_lvgl_all();   //lvgl初始化
    ui_init();
    
    if (headnode == NULL) {
        lv_textarea_set_text(ui_Label16, "FAILED!");
        return 0; 
    }
    lv_obj_set_user_data(ui_Button1, headnode);  // 为登录按钮回调函数传入有效的链表头

    /*打开文件*/
    fp_stu = fopen("student.txt", "a+");
    if(fp_stu == NULL)
    {
        lv_textarea_set_text(ui_Label16, "file failed!");  // 用单独标签显示错误，避免覆盖密码框
        return 0;  
    } 

    read_stu_to_list(headnode);                  // 文件读取
    STU students = {0};                          // 初始化结构体，避免垃圾数据
    /*LVGL 主循环：持续处理事件、刷新界面*/
    while(1) {
        lv_timer_handler();             // 处理 LVGL 内部定时器、事件
        usleep(5000);                   // 休眠 5ms，降低 CPU 占用

        if(state_register == true) {                 //当注册按钮被按下       
            process_register(&students, headnode);   //同步保存账号密码步骤  
        }
    }
    /**********************************/

    return 0;
}
